Dependently typed array programs don’t go wrong
نویسندگان
چکیده
منابع مشابه
Dependently typed array programs don't go wrong
The array programming paradigm adopts multidimensional arrays as the fundamental data structures of computation. Array operations process entire arrays instead of just single elements. This makes array programs highly expressive and introduces data parallelism in a natural way. Array programming imposes non-trivial structural constraints on ranks, shapes, and element values of arrays. A promine...
متن کاملDependently typed functional programs and their proofs
Research in dependent type theories [M-L71a] has, in the past, concentrated on its use in the presentation of theorems and theorem-proving. This thesis is concerned mainly with the exploitation of the computational aspects of type theory for programming, in a context where the properties of programs may readily be specified and established. In particular, it develops technology for programming ...
متن کاملWell-Typed Logic Programs Are not Wrong
We consider prescriptive type systems for logic programs (as in Gödel or Mercury). In such systems, the typing is static, but it guarantees an operational property: if a program is well-typed , then all derivations starting in a well-typed query are again well-typed . This property has been called subject reduction. We show that this property can also be phrased as a property of the proof-theor...
متن کاملReasoning about Array Structure Using a Dependently Typed Logic
This paper explores the use of a dependently-typed design logic for describing and reasoning about systolic arrays. Taking triangular arrays as an example, it is shown how they may usefully be deened in various equivalent ways and how their behaviour may be related to that of the corresponding one-dimensional systolic arrays. This allows complex proofs of the properties of such (dynamic) arrays...
متن کاملDependently Typed Meta-programming
Dependent types and multi stage programming have both been used, separately, as implementation techniques for programming languages. Each technique has its own advantages — with dependent types, we can verify aspects of interpreters and compilers such as type safety and stack invariants. Multi stage programming, on the other hand, can give the implementor access to underlying compiler technolog...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: The Journal of Logic and Algebraic Programming
سال: 2009
ISSN: 1567-8326
DOI: 10.1016/j.jlap.2009.03.002